package collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class SortListDemo3 {
    public static void main(String[] args) {
        /*
        Sring实现了Comparable接口，比较规则:按照首字符的
        unicode编码转换的整数比较大小，当该字符相同时再看第二个字符，以此类推
         */
        List<String> list=new ArrayList<>();
        /*list.add("Tom");
        list.add("rose");
        list.add("jack");
        list.add("kobe");
        list.add("james");
        list.add("ada");
        list.add("Jerry");
        list.add("hanmeimei");
        list.add("jill");
        list.add("list");
         */
        list.add("张晓佳");
        list.add("罗帅斌");
        list.add("张鹏");
        list.add("张进桃");
        list.add("晓佳最美");
        list.add("张");
        list.add("罗");
        System.out.println(list);
        Collections.sort(list);
        System.out.println(list);
        //为String 定义一个比较器，比较规则：字少的小，字多的大
        //注意：！！！！sort只能是从小到大排
        /*Comparator<String> c=new Comparator<String>() {
            public int compare(String o1, String o2) {
                int len1=o1.length();
                int len2=o2.length();
                return len1-len2;
            }
        };
        Collections.sort(list,c);
         */
        Collections.sort(list,new Comparator<String>() {
            public int compare(String o1, String o2) {
                //return o1.length()-o2.length();----从小到大排列
                return o2.length()-o1.length();//----从大到小排列
            }
        });
        System.out.println(list);
    }
}
